<script>
    var str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'

    // 数据库中存储的数据
    var  cites = [

        { py: 'beijing', name: '北京' },

        { py: 'alishan', name: '阿里山' },

        { py: 'beidaihe', name: '北戴河' },

        { py: 'shijiazhuang', name: '石家庄' },

        { py: 'wufangqiao', name: '五方桥' },

    ]

    // 生成基本结构
    let  obj={} 
    let  arr=Array.from(str)
    // console.log(arr);// ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']

    arr.forEach(function(value){
        obj[value]=[]
    })

    // console.log(obj);//{A: Array(0), B: Array(0), C: Array(0), D: Array(0), E: Array(0), …}


    // 在对应的数组中，放入对应的数据
    cites.forEach(function(value){
        // console.log(  value.py[0].toUpperCase()  );

        let letter=value.py[0].toUpperCase() 

        // console.log(obj[letter]);

        obj[letter].push(value)


       /*  arr.forEach(function(item){
            // console.log(item);
            if(item==letter){
                obj[letter].push(value)
            }
        }) */

    })

    console.log(obj);


    
</script>